Getting Started - Building the plugin
The RidgeRun GStreamer Browser Sink documentation from RidgeRun is presently being developed. |
Dependencies
GStreamer Browser Sink needs the following dependencies:
- GStreamer development files
- Libsoup development files
- Libnice development files
- GStreamer plug-ins (to run the pipeline)
- Build utilities (meson, ninja, compilers, etc...)
In debian-based systems you can run:
sudo apt install \ pkg-config \ libgstreamer1.0-dev \ libsoup-3.0-dev \ libnice-dev \ libssl-dev \ gstreamer1.0-plugins-base \ gstreamer1.0-plugins-good \ gstreamer1.0-plugins-bad \ gstreamer1.0-plugins-ugly \ gstreamer1.0-libav \ gstreamer1.0-nice \ gstreamer1.0-tools gstreamer1.0-x \ ninja-build build-essential
Meson needs to be installed from PIP:
sudo -H pip install meson
Building the project
Once the dependencies have been met you can clone the repository. You can run a default compilation with the following:
meson setup builddir --prefix /usr meson compile -C builddir sudo meson install -C builddir
You can check the installation of the plugin as follows.
gst-inspect-1.0 rrbrowsersink
The expected output will start as follows
Factory Details: Rank none (0) Long-name RidgeRun Browser Sink Klass Sink/Video/Network Description Render low-latency streams to a browser window Author Michael Gruner <michael.gruner@ridgerun.com> Plugin Details: Name rrbrowsersink Description RidgeRun Browser Sink Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrrbrowsersink.so Version 0.1.0 License Proprietary Source module gst-rr-browser-sink Binary package RidgeRun Origin URL https://ridgerun.com
Troubleshooting
Troubleshooting
Problems During Build Phase
If you run into any problem during the build phase, please send the following information to support@ridgerun.com :
- The contents of builddir/meson-logs/meson-log.txt
- The terminal output showing the build error.
- The output of the following:
pkg-config --modversion gstreamer-1.0 pkg-config --modversion glib-2.0 pkg-config --modversion nice pkg-config --modversion libsoup-3.0
Problems During Inspection Phase
1. If you run into any problem during the gst-inspect-1.0 execution, please start by regenerating the GStreamer cache and re-inspecting the element, as shown below:
rm ~/.cache/gstreamer-1.0/registry.*.bin get-inspect-1.0 rrbrowsersink
If that should the expected output then you're good and there's no need to proceed with the next steps.
2. If regenerating the cache doesn't help, then send the following information to support@ridgerun.com :
echo "GStreamer version" gst-launch-1.0 --gst-version echo "GStreamer default plugin path" gst-inspect-1.0 identity | grep Filename echo "GStreamer env usr path: $GST_PLUGIN_PATH" echo "GStreamer env sys path: $GST_PLUGIN_SYSTEM_PATH" echo "Direct plugin inspect" gst-inspect-1.0 /usr/lib/$(uname -m)-linux-gnu/gstreamer-1.0/libgstrrbrowsersink.so